﻿using DigDes.DSchool.SUPS.DataAccess.Interface;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DigDes.DSchool.SUPS.DataAccess.Database
{
    public class FileLoaderDAC
    {
        // TODO: вынести общий функционал для подобных классов доступа к БД в общий класс BaseDAC

        // Сама строка хранится в app.config (web.config) файле исполняемого файла, который дёрнет метод этой библиотеки классов.
        // В нашем случае это DigDes.DSchool.SUPS.Test.App файл App.Config.

        private static readonly string ConnectionStringKey = "SUPSDB"; 

        public static void DoSomething(MyLoader1DTO row)
        {
            var connectionString = ConfigurationManager.ConnectionStrings[ConnectionStringKey].ConnectionString;
            using (var sqlConn = new SqlConnection(connectionString))
            {
                using (var sqlCmd = sqlConn.CreateCommand())
                {
                    sqlCmd.CommandText = "insert into SomeTable (SomeTitle, SomeValue) values (@someTitle, @someValue)";
                    sqlCmd.Parameters.AddWithValue("@someValue", row.SomeValue);
                    sqlCmd.Parameters.Add("@someTitle", System.Data.SqlDbType.VarChar, 40).Value = row.SomeTitle;

                    sqlConn.Open();
                    sqlCmd.ExecuteNonQuery();
                }
            }
        }

        public static void DoSomething2(IEnumerable<MyLoader1DTO> rows)
        {
            // Делается по аналогии с предыдущим методом
            throw new NotImplementedException();
        }
    }
}
